package joc.customize;

import java.lang.annotation.Annotation;

public class PartialEvaluationResult {
	private Class<? extends Annotation> annotationClass;
	private boolean successful;
	private String errorMessage;

	protected PartialEvaluationResult(PartialEvaluationResult that) {
		this.annotationClass = that.annotationClass;
		this.successful = that.successful;
		this.errorMessage = that.errorMessage;
	}

	public PartialEvaluationResult(Class<? extends Annotation> annotationClass) {
		this(annotationClass, true, "");
	}

	public PartialEvaluationResult(Class<? extends Annotation> annotationClass, String errorMessage) {
		this(annotationClass, false, errorMessage);
	}

	public PartialEvaluationResult(Class<? extends Annotation> annotationClass, boolean successful, String errorMessage) {
		this.annotationClass = annotationClass;
		this.successful = successful;
		this.errorMessage = errorMessage;
	}

	public Class<? extends Annotation> getAnnotationClass() {
		return annotationClass;
	}

	public boolean isSuccessful() {
		return successful;
	}

	public String getErrorMessage() {
		return errorMessage;
	}
}
